﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using HHMMS.WorkFlow.Model;
using System.Web.UI;

namespace HHMMS.WorkFlow
{
    /// <summary>
    /// 工作流表单基类。
    /// </summary>
    public class WFUserControl : UserControl
    {
        /// <summary>
        /// 获取当前流程定义。
        /// </summary>
        public WorkflowDefinition CurrentWorkflow { get; set; }

        /// <summary>
        /// 获取当前环节。
        /// </summary>
        public WorkflowActivity CurrentActivity { get; set; }

        /// <summary>
        /// 流程实例的标题。
        /// </summary>
        public virtual string Title { get; set; }

        /// <summary>
        /// 关联的业务数据主键。
        /// </summary>
        public string DataKey { get; set; }

        /// <summary>
        /// 页面状态：0发起流程 1编辑流程 2查看流程
        /// </summary>
        public int ActionType { get; set; }

        /// <summary>
        /// 保存业务数据并返回一个值，该值用于标识是否创建或者运行流程。
        /// </summary>
        /// <returns></returns>
        public virtual bool SaveData()
        {
            return true;
        }

        /// <summary>
        /// 用于运行流程后更新业务数据状态。
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public virtual void OnWorkflowExecute(object sender, WorkflowEventArgs e)
        {
            
        }
    }
}
